package com.itheima;

import java.util.HashMap;
import java.util.Map;

public class MapPractice {
    public static void main(String[] args) {
        Map<String, String> data = new HashMap<>();
        data.put("小王", "A");
        data.put("小李", "B");
        data.put("小红", "C");
        data.put("小张", "A");
        data.put("小王1", "B");
        data.put("小王2", "C");
        data.put("小王3", "A");
        data.put("小强", "A");
        data.put("小明", "A");
        data.put("小李2", "C");
        data.put("小红2", "D");
        data.put("小王4", "A");
        count(data);
    }

    public static void count(Map<String, String> data) {
        /**
         * 1.创建一个新的map集合，用来存储统计投票结果
         * 2.遍历data集合
         * 3.将value（A）拿出来，那么value（A）当做key存储到新的集合中
         * 4.如果A已经存在了，那么将A对应的值为+1
         * 5.如果A不存在，那么直接将A-1，存储到新map中
         *6.遍历新map，打印结果
         */
        Map<String, Integer> resultMap = new HashMap<>();
        data.forEach((k, v) -> {
            boolean containKey = resultMap.containsKey(v);
            if (containKey) {
                Integer oldCount = resultMap.get(v);
                resultMap.put(v, oldCount + 1);
            } else {
                resultMap.put(v, 1);
            }

        });
        resultMap.forEach((k, v) -> {
            System.out.println(k + "-----" + v);
        });
    }
}
